package com.monster.service;

import com.monster.pojo.Song;

import java.util.ArrayList;

public interface PlayerService {
    /**
     * 获得需要播放的歌曲信息，并将用户的播放列表添加到user_play表中
     * @param key 关键字，代表类型
     * @param id key类型对应的id
     * @return 歌曲信息集合
     */
    ArrayList<Song> getPlaySongs(String key, Long id);

    /**
     * 获得用户收藏的所有歌曲信息以播放，并将用户的播放列表添加到user_play表中
     * @param userId 用户id
     * @return 歌曲信息集合
     */
    ArrayList<Song> getPlaySongs(Long userId);

    /**
     * 添加user_play的用户播放列表
     * @param userId
     * @param songId
     * @return 执行成功-true，失败-false
     */
    boolean addUserPlay(Long userId, Long songId);

    /**
     * 删除user_play表中的用户播放信息
     * @param userId
     */
    void deleteUserPlay(Long userId);

    /**
     * 删除user_play表中的某条播放信息
     * @param userId
     * @param songId
     * @return 执行成功-true，失败-false
     */
    boolean deleteUserPlay(Long userId, Long songId);

    /**
     * 获得user_play中的用户播放列表
     * @param userId
     * @return 执行成功-true，失败-false
     */
    ArrayList<Song> listUserPlay(Long userId);

}
